#pragma once
#include<iostream>
#include<cstdio>
#include<sys/stat.h>
#include<sys/types.h> //mkfifo的头文件
#include <unistd.h> //unlink
#include <fcntl.h> //open
#include<string>

#define PATHFILE "./myfifo" //文件路径
#define MODE 0664 //权限


enum{
    FILE_CREATE_ERROR = 1,
    FILE_OPEN_ERROR,
    FILE_DEL_ERROR
};

class Init
{
public:
    Init()
    {
        int ret = mkfifo(PATHFILE, MODE);
        if(ret < 0)
        {
            //错误信息
            perror("mkfifo");
            exit(FILE_CREATE_ERROR); //创建文件错误
        }
    }
    ~Init() //不能解决ctrl c退出的情况
    {
        int ret = unlink(PATHFILE);
        if(ret < 0){
            perror("unlink");
            exit(FILE_DEL_ERROR);
        }
    }
};